<?php
/**
 * 商品信息
 *
 * @author jc
 * @date 9/17
 */
namespace app\common\model;

use think\Exception;
use think\Model;

class Product extends Model {
    
    protected $name = 'product';
    
    const CATE_RECOMMEND_ID     = -100; // 将推荐商品cate ID 设置为-100；
    const CATE_RECOMMEND_NAME   = '推荐';
    
    const IS_RECOMMEND_YES  = 1;
    const IS_RECOMMEND_NO   = 0;

    const PRODUCT_TYPE_NORMAL   = 1;
    const PRODUCT_TYPE_FUNDING  = 2;
    const PRODUCT_TYPE_GROUP    = 3;
    
    const IS_DELETE_YES = 1; // 删除
    const IS_DELETE_NO  = 0; // 正常
    
    const IS_SHOW_YES   = 1; // 上架
    const IS_SHOW_NO    = 2; // 未上架
    
    const IS_DISPLAY_YES    = 1; // 显示
    const IS_DISPLAY_NO     = 2; // 不显示

    // 物流配送方式，自提
    const DISPATCHING_TYPE_SELF_PICK = 2;
    // 物流配送方式，配送
    const DISPATCHING_TYPE_DELIVER = 1;
    // 已经收藏
    const IS_COLLECTED_YES = 1;
    // 没有收藏
    const IS_COLLECTED_NO = 2;

    /*是否新手专用*/
    const IS_NEW_SPECIAL_YES = 1;
    const IS_NEW_SPECIAL_NO = 2;

    public static function productTypeMap()
    {
        return [
            self::PRODUCT_TYPE_NORMAL   => '普通商品',
            self::PRODUCT_TYPE_FUNDING  => '众筹商品',
            self::PRODUCT_TYPE_GROUP    => '拼团商品',
        ];
    }

    public static function dispatchingTypeMap()
    {
        return [
            self::DISPATCHING_TYPE_DELIVER      => '物流配送',
            self::DISPATCHING_TYPE_SELF_PICK    => '门店自提',
        ];
    }

    /**
     * 商品分类关联
     */
    public function category()
    {
        return $this->hasOne('app\common\model\Product', 'product_category_id', 'cate_id');
    }

}